package com.amsp.oa.oademo.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;

@Data
@TableName("employee_resignation")
@ApiModel(value = "员工离职实体")
public class EmployeeResignation {
    @TableId(type = IdType.AUTO)
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("员工姓名")
    private String empName;

    @ApiModelProperty("性别")
    private String empGender;

    @ApiModelProperty("所在部门")
    private String empDepartment;

    @ApiModelProperty("现任职务")
    private String empPosition;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("进厂日期")
    private LocalDate entryDate;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("离厂日期")
    private LocalDate leaveDate;

    @ApiModelProperty("离厂原因")
    private String resignationReason;

    @ApiModelProperty("批注人")
    private String annotator;

    @ApiModelProperty("经办人")
    private String handler;

    @ApiModelProperty("备注")
    private String remark;

    @ApiModelProperty("批准人")
    private String approver;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("批准日期")
    private LocalDate approverDate;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("经办日期")
    private LocalDate handlerDate;

    @ApiModelProperty("部门工作移交")
    private String departmentTransfer;

    @ApiModelProperty("组长")
    private String teamLeader;

    @ApiModelProperty("主管")
    private String supervisor;

    @ApiModelProperty("经理")
    private String manager;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("部门移交日期")
    private LocalDate sectionDate;

    @ApiModelProperty("品质仓库移交")
    private String qualityWarehouseTransfer;

    @ApiModelProperty("品检")
    private String qualityInspector;

    @ApiModelProperty("仓管")
    private String warehouseman;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("仓库移交日期")
    private LocalDate warehouseDate;

    @ApiModelProperty("厂牌是否已回收")
    private Boolean isBadgeReturned;

    @ApiModelProperty("系统资料是否已删除")
    private Boolean isSystemDataDeleted;

    @ApiModelProperty("经办人1")
    private String handler1;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("日期1")
    private LocalDate date1;

    @ApiModelProperty("社保是否已退")
    private Boolean isSocialSecurityWithdrawn;

    @ApiModelProperty("未结算社保费用")
    private BigDecimal unsettledSocialSecurityCost;

    @ApiModelProperty("经办人2")
    private String handler2;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("日期2")
    private LocalDate date2;

    @ApiModelProperty("宿舍是否已归还")
    private Boolean isDormReturned;

    @ApiModelProperty("物品行李是否已搬出")
    private Boolean isBelongingsMovedOut;

    @ApiModelProperty("经办人3")
    private String handler3;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @ApiModelProperty("日期3")
    private LocalDate date3;

    @ApiModelProperty("行政后勤未结算费用")
    private BigDecimal unsettledLogisticsCost;

    @ApiModelProperty("经办人4")
    private String handler4;

    @ApiModelProperty("日期4")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private LocalDate date4;

    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime createTime;

    @ApiModelProperty("更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime updateTime;
}